/** 方案1:将数字转换为字符数组  */
function numFormat(num){
    /** num[0]整数部分 num[1]小数部分（）如果有 */
    num = num.toString().split(".");
    let arr = num[0].split("").reverse();
    let res = [];
    for(let i = 0;i < arr.length; i++){
        if(i % 3 === 0 && i !== 0) {
            res.push(',');
        }
        res.push(arr[i]);
    }
    res.reverse();
    if(num[1]) 
        res = res.join("").concat("." + num[1]);
    else
        res = res.join("")
    return res;
}

var num = 123456789453.231331;
console.log(numFormat(num));

/** 正则表达式 和 replace函数 */
function numFormatReg(num) {
    num = num.toString().split('.');
    var reg = /(?=(\B)(\d{3})+$)/g;
    num[0] = num[0].replace(reg, ',');
    if(num[1])
        return num[0] + '.' + num[1];
    else
        return num[0];
}
console.log(numFormatReg(num));
